package com.mobile.service.mapper;

import com.mobile.service.dto.MessageNotificationDTO;
import com.mobile.service.dto.MessageNotificationQueryDTO;
import com.mobile.service.entity.MessageNotification;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 消息通知 Mapper 接口
 */
@Mapper
public interface MessageNotificationMapper {

    /**
     * 添加消息通知信息
     * @param messageNotification 消息通知实体
     * @return 影响行数
     */
    int insertMessageNotification(MessageNotification messageNotification);

    /**
     * 分页获取消息通知列表
     * @param queryDTO 查询条件
     * @return 消息通知列表
     */
    List<MessageNotificationDTO> messageNotificationlistPage(MessageNotificationQueryDTO queryDTO);

    /**
     * 条件查询消息通知列表
     * @param queryDTO 查询条件
     * @return 消息通知列表
     */
    List<MessageNotificationDTO> getMessageNotificationList(MessageNotificationQueryDTO queryDTO);

    /**
     * 根据主键获取消息通知信息
     * @param id 主键ID
     * @return 消息通知信息
     */
    MessageNotificationDTO getMessageNotificationById(@Param("id") Integer id);

    /**
     * 修改消息通知信息
     * @param messageNotification 消息通知实体
     * @return 影响行数
     */
    int updateMessageNotification(MessageNotification messageNotification);

    /**
     * 删除消息通知信息
     * @param id 主键ID
     * @return 影响行数
     */
    int deleteMessageNotification(@Param("id") Integer id);
}